﻿using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using Hostal.Bussines.Repository;
using Hostal.Bussines.Repository.Service;
using Hostal.Bussines.Entities;

namespace ProyectoTesteo
{
    [TestClass]
    public class UnitTest1
    {
        [TestMethod]
        public void AddTipoHabitacion()
        {
            ITipoHabitacionRepository tipoHabitacionRepository = new TipoHabitacionRepository();

            TipoHabitacione tipoHabitcion = new TipoHabitacione()
            {
                IdHabitacion = 9,
                Descripcion = "Simple"
                
            };

            tipoHabitacionRepository.AddTipoHabitacion(tipoHabitcion);

            var tipoHabitacionList = tipoHabitacionRepository.GetAllFromTipodeHabitacion();
            
            Assert.AreEqual(tipoHabitacionList.Count, 3);
        }


        [TestMethod]
        public void GetTipoHabitacionByNombre()
        {
            ITipoHabitacionRepository tipoHabitacionRepository = new TipoHabitacionRepository();

            var tipoHabitacionDescripcion = tipoHabitacionRepository.GetFromTipoHabitacionByCriterio("Simple");
            
            Assert.AreEqual(tipoHabitacionDescripcion.Count, 3);             
        }



        [TestMethod]
        public void TipoHabitacionById()
        {
            ITipoHabitacionRepository tipoHabitacionRepository = new TipoHabitacionRepository();

            var idTipoHabitacion = tipoHabitacionRepository.GetFromTipoHabitacionById(26);

            Assert.IsNull(idTipoHabitacion);
        }



        //[TestMethod]
        //public void EditTipoHabitacion()
        //{
            
        //}


        [TestMethod]
        public void RemoveTipoHabitacionById()
        {
            ITipoHabitacionRepository tipoHabitacionRepository = new TipoHabitacionRepository();           

            var idTipoHabitacion = tipoHabitacionRepository.GetFromTipoHabitacionById(26);

            //falta hacer la eliminacion

            //var eliminar = tipoHabitacionRepository.RemoveTipoHabitacion(27);
            //Assert.IsNull(eliminar,true);
           
        }
    }
}
